/*-- POPUP: { --*/
html.popup-lock,
body.popup-lock { overflow-y: hidden; }
.popup { position: fixed; top: 0; right: 0; z-index: 1100; overflow-x: auto; overflow-y: scroll; display: none; width: 100%; height: 100%; margin:0; background: rgba(255,255,255, .9); }
.popup_opened { display: block; }
.popup__outer { display: table; width: 100%; height: 100%; }
.popup__inner { display: table-row; }
.popup__viewport { display: table-cell; padding: 20px; text-align: center; vertical-align: middle; }
.popup__frame { position: relative; display: inline-block; padding: 0; background: #fff; text-align: left; vertical-align: baseline; box-shadow: 0 2px 5px 0 rgba(0,0,0, .25); }
.popup__close { position: absolute; top: -20px; right: -20px; width: 20px; height: 20px; text-align: center; color: #aaa; font-size: 20px; font-weight: bold; line-height: 20px; text-decoration: none; }
/*-- } /popup. --*/